The present invention relates to creating baselines, and more particularly to techniques that enable creation and use of dynamic baselines that provide enhanced capabilities.
An essential task of an administrator of any system, such as a software system, is to be able to detect, diagnose, and tune performance problems that may occur in the system. These systems may include software systems, computer server systems, computer network systems, telephony communication systems, etc. As an example, for a product instance of a software system such as a database system (for example, database systems provided by Oracle™ Corporation of Redwood Shores, Calif.), it is very useful to know how the product instance is performing at a certain time compared with another time.
In order to carry out such comparisons, users need to capture and store performance metrics data for various interesting time periods. Having access to baselines of performance metrics data allows users to access and compare a current set of performance metrics data against other sets of performance metrics data captured at other times. A baseline is a construct for specifying a time period of interest in which performance metrics data are captured over the time period. Conventionally, a baseline has been restricted to specify time periods that are static in nature. Further, baselines have been restricted to time periods in the past. These limitations have proven to be quite restrictive. Comparisons of current performance metrics against static and often outdated performance baselines can dramatically reduce an administrator's ability to detect, diagnose, and tune performance problems that may occur in a software system.
In light of the above, it is desirable to provide a more flexible and adaptive approach to defining, capturing, and maintaining performance metrics baselines.